package com.domus.dreamMenu.comunicacao;

import java.net.MalformedURLException;
import java.rmi.Naming;
import java.rmi.NotBoundException;
import java.rmi.RMISecurityManager;
import java.rmi.RemoteException;

import com.domus.dreamMenu.resource.Resources;
import com.domus.dreamMenu.tipos.RelacaoConta;

public class ChamadaDeMetodosRemotosDoCaixa{
	
	
	private static InterfaceRemotaServidorCaixa interfaceRemotaDoServidorCaixa;
	
		
	public static void iniciarServidor(){ 
		if(interfaceRemotaDoServidorCaixa==null){
			try {
				System.setProperty("java.security.policy", "policy.p");
				if(System.getSecurityManager() == null)
				System.setSecurityManager(new RMISecurityManager());
				interfaceRemotaDoServidorCaixa = (InterfaceRemotaServidorCaixa)
				Naming.lookup(Resources.rmiCaixa);
				
			} catch (MalformedURLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (RemoteException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (NotBoundException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			System.out.println(interfaceRemotaDoServidorCaixa);
		}
		
		
	}
	
	public static void mostrarContaNoCaixa(RelacaoConta conta){
		iniciarServidor();
		System.out.println(interfaceRemotaDoServidorCaixa);
		try {
			interfaceRemotaDoServidorCaixa.mostrarConta(conta);
		} catch (RemoteException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

	
	

}
